In a non-volatile semiconductor storage device, in performing a read operation from a non-volatile memory, a voltage value to be read from memory cells changes due to number of writing/erasure, a data retaining period, and a surrounding temperature. If necessary, a correction by an ECC (Error Check and Correction) is performed. However, conventionally, such changes in the voltage value and a degree of correction by the ECC are unknown to a user, and due to this, the use keeps using the non-volatile memory despite a nearing end of the lifetime thereof, and this may in cases cause an abrupt loss of data that had been stored in the non-volatile memory.